home *** CD-ROM | disk | FTP | other *** search
- 10 PRINT"[147]THIS PROGRAM WILL PRINT A DIRECTORY"
- 15 PRINT"LISTING THE SIZE OF A DISK JACKET. "
- 20 PRINT"THE LABEL STRING PROMPT IS THE DISK NUMBER."
- 25 PRINT" PRESS RETURN"
- 30 GETA$:IFA$<>CHR$(13)THEN30
- 100 DIMFX$(256),FT$(256),FL(256),TT(256):N=-1:FORI=1TO256:FX$(I)="":NEXT:X=245
- 110 BL$=" ":FORI=1TO40:BL$=BL$+" ":NEXT
- 120 CLOSE15:OPEN15,8,15:OPEN1,8,0,"$0":GOSUB480:GET#1,A$,B$
- 130 W=51:L$="":INPUT"LABEL STRING";L$
- 135 IFLEN(L$)>22THENPRINT"LABEL STRING TOO LONG-MAX IS 22 CHARACTERS.":GOTO130
- 140 GET#1,A$,B$:GET#1,A$,B$:C=0:IFA$<>""THENC=ASC(A$)
- 150 IFB$<>""THENC=C+ASC(B$)*256
- 160 N=N+1:FL(N)=C
- 170 GET#1,B$:IFST<>0THEN260
- 180 IFB$<>CHR$(34)THEN170
- 190 N$=""
- 200 GET#1,B$:IFB$<>CHR$(34)THENN$=N$+B$:GOTO200
- 210 FX$(N)=N$
- 220 GET#1,B$:IFB$=CHR$(32)THEN220
- 230 C$=""
- 240 C$=C$+B$:GET#1,B$:IFB$<>"" THEN240
- 250 FT$(N)=LEFT$(C$,3):IFST=0THEN140
- 260 CLOSE1:BF=FL(N):N=N-1:GOSUB580
- 270 CLOSE3:OPEN3,4
- 280 PRINT#3,CHR$(240);:FORI=1TO51:PRINT#3,CHR$(241);:NEXT:PRINT#3,CHR$(242)
- 290 PRINT#3,CHR$(X);SPC(51);CHR$(X)
- 300 T2$=FX$(0):IFL$<>""THENT2$=T2$+" ("+L$+")"
- 310 T$=CHR$(X)+" >>> "+FX$(0)
- 315 IFL$=""THENT$=T$+MID$(BL$,1,W-LEN(T$)-1):GOTO330
- 320 K=W-2-LEN(T$)-LEN(L$):T$=T$+MID$(BL$,1,K-1)+"("+L$+")"
- 330 T$=T$+" "+CHR$(X):PRINT#3,T$
- 340 PRINT#3,CHR$(X);SPC(51);CHR$(X)
- 350 PRINT#3,CHR$(244);:FORI=1TO51:PRINT#3,CHR$(241);:NEXT:PRINT#3,CHR$(249)
- 360 PRINT#3,CHR$(X);SPC(51);CHR$(X)
- 370 L=9:K=INT((N+1)/2):FORI=1TOK
- 380 T$=CHR$(X):J=I:GOSUB520:T$=T$+" ":J=K+I:GOSUB520:T$=T$+" "+CHR$(X)
- 390 PRINT#3,T$ : L=L+1 : NEXT
- 400 PRINT#3,CHR$(X);SPC(51);CHR$(X)
- 410 P=INT((BF*100/664)+.5):P$=MID$(STR$(P),2)
- 420 T$=CHR$(X)+MID$(BL$,1,14)+STR$(BF)+" BLOCKS ("+P$+"%) FREE"
- 430 T$=T$+MID$(BL$,1,W-LEN(T$)+1)+CHR$(X):PRINT#3,T$
- 440 FORI=LTO27:PRINT#3,CHR$(X);SPC(51)CHR$(X)
- 450 NEXT
- 460 PRINT#3,CHR$(246);:FORI=1TO51:PRINT#3,CHR$(241);:NEXT:PRINT#3,CHR$(247)
- 470 PRINT#3:CLOSE3:CLOSE15:END
- 480 INPUT#15,ER,ER$:IFER<20THENRETURN
- 490 IFER=74ORER=21THENER$=ER$+"--IS DISK INSERTED?":GOTO510
- 500 ER$="DISK ERROR"+STR$(ER)+": "+ER$
- 510 PRINTER$:END
- 520 T=TT(J):IFT=0THENT$=T$+MID$(BL$,1,24):RETURN
- 530 IFFL(T)<100THENT$=T$+" "
- 540 IFFL(T)<10THENT$=T$+" "
- 550 T$=T$+MID$(STR$(FL(T)),2)+" "+FX$(T)
- 560 IFLEN(FX$(T))<16THENT$=T$+MID$(BL$,1,16-LEN(FX$(T)))
- 570 T$=T$+" "+LEFT$(FT$(T),3):RETURN
- 580 FORI=1TON:TT(I)=I:NEXT
- 590 FORI=1TON-1:S=I:FORJ=I+1TON:IFFX$(TT(J))<FX$(TT(S))THENS=J
- 600 NEXTJ:IFS<>ITHENT=TT(I):TT(I)=TT(S):TT(S)=T
- 610 NEXTI:RETURN
-